package com.ccrfid.rmc6.service.poi;

import com.ccrfid.rmc6.entity.device.LocatorEntity;
import com.ccrfid.rmc6.entity.personnel.PersonnelView;
import com.ccrfid.rmc6.entity.poi.PoiLocationEntity;
import com.ccrfid.rmc6.entity.video.VideoCameraView;
import com.vividsolutions.jts.geom.Point;
import com.vividsolutions.jts.geom.Polygon;

import java.util.List;

public interface PoiService {
    //获取某个矩形内的区域信息
    List<PoiLocationEntity> getPoiLocationsInPolygon(Integer mapLevel, Integer floorNumber, Polygon polygon);
    //获取某个区域内的定位器信息
    List<LocatorEntity> getLocatorsInLocation(PoiLocationEntity locationEntity);
    //获取某个定位器所属的区域
    List<PoiLocationEntity> getLocationsByLocator(LocatorEntity locatorEntity);
    //获取某个位置所属的3级地图区域
    PoiLocationEntity get3LevelLocationByPos(Integer floorNumber, Point point);
    //获取某个区域内的摄像头信息
    List<VideoCameraView> getCamerasInLocation(PoiLocationEntity locationEntity);
    //获取某个多边形内的摄像头信息
    List<VideoCameraView> getCamerasInPolygon(Integer floorNumber, Polygon polygon);
    //获取某个区域内的人员信息
    List<PersonnelView> getPersonnelsInLocation(PoiLocationEntity locationEntity);
}
